/**
 * 获取假日(公历+农历)
 * @param y int|string 公历年
 * @return object {'Y-M-D':'{x}假日中文名'}
 * 		Y-M-D:公历年月日  {x}:m=农历,s=公历
 */
$.dateMeshHday = function(y){
	const T={}, Y=new Date().getFullYear(), M=['cx','cj','qm','dw','zq'];
	const DATA = {'01-01':'元旦节', '05-01':'劳动节', '10-01':'国庆节'};
	const MOON = (rtn,m)=>Object.keys(m).forEach(k=>rtn['m'+k]=m[k]);
	$.dateMeshHday = function(y){
		if(T[y]) return T[y];  let p=y+'-', rtn={};
		Object.keys(DATA).forEach(k=>rtn['s'+p+k]=DATA[k]);
		M.forEach(k=>{ MOON(rtn,$.dateMoonFest(y,k)); });
		return y<Y-10 || y>Y+10 ? rtn : T[y]=rtn; //缓存前后10年数据
	};
	return $.dateMeshHday(y);
};
